package 单例设计模式_2;

/**
 * @Auther:云尚学Java  面向对象的程序设计思想OOP 封装、继承、多态
 * </hr>
 * 简单的单例模式开始 只有唯一一个实例的存在，不能再多了
 * 宇宙 系统 对象 实例
 * </hr>
 * 类中空空如也
 */
public class God {
    /**
     * 2.God类里面封装一个God
     */
    static God god;//自有永有的神单例
    /**
     * 1.保证任何人都不能去创造神的实例
     * <p></p>
     * 否则：new God() 不写构造方法 默认存在 改成私有的private
     * 神可以是创造自己，但别人不能
     */
    private God(){
        /**
         * static final
         */
    }
    /**
     * 4.不需要实例化就能运行的入口 main方法 static
     */
    public static synchronized God getInstance(){
        //如果无神才创造神
        if(god==null){
            god=new God();
        }
        return god;
    }

}
